Πρώτα από όλα δοκίμασε να κάνεις upgrade το project σου σε VS 2008.Το .NET δεν υπήρχε στις εποχές του VS 6 και μόνο δυσκολίες θα σου προσφέρει.Η μετατροπή είναι εύκολη και αυτόματη απλά ανοίγοντας το project με VS 2008 (κράτα backup φυσικά).Μετά κάνε ένα δοκιμαστικό build&run και αν όλα πάνε καλά άσε το VS 6 στην γωνιά του.
Στο ίδιο solution που σου έφτιαξε ο wizard (solution είναι ο διάδοχος του workspace) πρόσθεσε ένα νέο project,Visual C++ -> CLR -> class library.Η C++/CLI παρότι έχει πολύ οικεία σύνταξη για ένα χρήστη της C++ έχει και διαφορές για να ανταποκριθεί στα σενάρια που αντιμετωπίζει.Ρίξε μια ματιά εδώ για μια μικρή εισαγωγή.Επίσης πρέπει να σκεφτείς πως θα επικοινωνεί η κλάση σου με την MFC εφαρμογή,η χρήση των εγγενών τύπων της C++ διευκολύνει αρκετά.Ορίστε ένα μικρό δείγμα κώδικα:
επαναλαμβάνω ότι syntax higlighting για C++/CLI ή έστω C/C++ θα ήταν μια επιθυμητή προσθήκη στο site
using
namespace System;
namespace
test {
public ref class TestClass
{
public:
DateTime Uselessfunction()
{
TimeZone ^zone=TimeZone::CurrentTimeZone;
return
zone->ToUniversalTime(DateTime::Now);
}
};
}
Κάνε build στο class library και πήγαινε στα project properties του MFC project σου.Στα General Properties->Common Language Runtime Support επέλεξε Common Language Runtime Support (/clr).Αφού κάνεις apply κάνε δεξί κλικ στο project και επέλεξε References...->Add New Reference...->Browse και επέλεξε το class library που παρήγαγες πριν.Και ένα δείγμα πώς θα το χρησιμοποιήσεις στο MFC project σου:
test::TestClass ^tst=
gcnew TestClass();
System::DateTime date=tst->Uselessfunction();
int day=date.Day;
int month=date.Month;
int year=date.Year;
// Κάνε κάτι με τα δεδομένα
Μόλις μάθεις τα βασικά τα χέρια σου θα λυθούν αμέσως,οπότε όποια απορία έχεις ελεύθερα.